home *** CD-ROM | disk | FTP | other *** search
- TITLE scrn4.asm
-
- ; AUTHOR Tim Spencer - Compuserve [73657,1400]
- ; DATE March 19, 1987
-
- _TEXT SEGMENT BYTE PUBLIC 'CODE'
- _TEXT ENDS
-
- _DATA SEGMENT WORD PUBLIC 'DATA'
- _DATA ENDS
-
- DGROUP GROUP _DATA
- ASSUME CS:_TEXT, DS:DGROUP, SS:DGROUP, ES:NOTHING
-
-
- _TEXT SEGMENT BYTE PUBLIC 'CODE'
-
- ;-----------------------------------------------------------------------;
- ; vcard_type - Tests for type of video card in use ;
- ; ;
- ; Returns: 0 = MONOCHROME ADAPTER ;
- ; 1 = COLOR GRAPHICS ADAPTER ;
- ; 2 = ENHANCED GRAPHICS ADAPTER ;
- ;-----------------------------------------------------------------------;
-
- PUBLIC _vcard_type
-
- _vcard_type PROC NEAR
- push es
- mov ax,40h ; point es to BIOS area
- mov es,ax
- mov al,es:[87h] ; is there an EGA card?
- cmp al,0
- je mono_test ; no ega, check for mono
- test al,00001000b ; test bit 3
- jnz mono_test ; bit 3 was set - ega not active card
- mov ax,2 ; ega is in use...return a 2
- jmp short exit
- mono_test:
- mov al,es:[10h] ; get video status byte
- and al,00110000b ; isolate bits 4 and 5
- cmp al,48 ; is it a mono card?
- jne assume_cga ; no, assume it's a cga
- mov ax,0 ; return 0 for mono card
- jmp short exit
- assume_cga:
- mov ax,1 ; return a 1 for cga card
- exit: pop es
- ret
- _vcard_type ENDP
-
- _TEXT ENDS
-
- END
-